iT邦幫忙

2023 iThome 鐵人賽

DAY 10
0
Odoo

Odoo開發系列 第 10

[Day 10] odoo14 - kanban view、pivot view及graph view介紹

  • 分享至 

  • xImage
  •  

前兩天說明了最基本的tree view以及form view,今天就換來介紹相較之下較少用,但在view裡面也是相當重要的幾種view。

首先要介紹的是Kanban view(看板視圖)
先上看板的範例:

<record id="view_idx_repair_kanban" model="ir.ui.view">
        <field name="name">idx.repair.kanban</field>
        <field name="model">idx.repair</field>
        <field name="arch" type="xml">
            <kanban class="oe_background_grey" default_group_by="state">
                <templates>
                    <t t-name="kanban-box">
                        <div class="oe_kanban_content">
                            <div class="oe_kanban_title">
                                <field name="name"/>
                            </div>
                            <div class="oe_kanban_subtitle">
                                <field name="partner_id"/>
                            </div>
                            <div class="oe_kanban_footer">
                                <field name="repair_date"/>
                            </div>
                        </div>
                    </t>
                </templates>
            </kanban>
        </field>
    </record>

顯示的畫面如下:
https://ithelp.ithome.com.tw/upload/images/20230925/20163263nB57Hs30o5.png

id:kanban view的id,只要不重複即可。
name:kanban view的name,僅為了識別用。
model:kanban view的所屬model。
arch:用來定義view。

看板視圖比較特別的地方在於其他種類的view都是主要以xml的元素或tag加上少量的HTML元素來編寫畫面,但在看板的部分,大部分語法則是採用HTML來編寫而成的。
下面來介紹在kanban中會使用到的參數:

  • default_group_by:指定資料要依哪個欄位的值去做分組,實際使用上通常會跟範例一樣,用狀態來將所有資料做分組。
  • group_create:跟default_group_by有點相像,都是讓資料分組來顯示,但這個參數若設定為true,即可動態新增分組的種類,讓使用者自行增加。
  • group_edit:若設置為true,使用者就可自行編輯分組的名稱。
  • group_delete:若設置為true,使用者就可自行刪除分組。
  • archivable:若設置為true,使用者可將資料設為存檔,在看板畫面上便不會顯示。
  • sample:若設置為true,畫面上會顯示範本,教使用者如何使用。
  • quick_create:若設置為true,使用者便可以在看板中快速新增資料,不用額外開啟form view來填寫資料。
  • create:用來設定使用者是否可以從看板新增資料。

看板除了以上介紹的部分,還有許多參數或功能可以使用,大家可以慢慢去發掘其他用法。

換介紹pivot view(樞紐分析表)的部分。
一樣先上範例:

<record id="view_idx_repair_pivot" model="ir.ui.view">
    <field name="name">idx.repair.pivot</field>
    <field name="model">idx.repair</field>
    <field name="arch" type="xml">
        <pivot string="Sale Order Pivot">
            <field name="reason" type="row"/>
            <field name="partner_id" type="col"/>
        </pivot>
    </field>
</record>

顯示的畫面如下:
https://ithelp.ithome.com.tw/upload/images/20230925/20163263wgFXtZ9LJB.png

id:pivot view的id,只要不重複即可。
name:pivot view的name,僅為了識別用。
model:pivot view的所屬model。
arch:用來定義view。

樞紐分析表的參數設置:

  • type='row':表示該欄位是列
  • type='col':表示該欄位是行

使用者可以藉著樞紐分析表來查看自己希望了解的數據。

最後要介紹的是graph view(圖表)
範例:

<record id="view_idx_repair_graph" model="ir.ui.view">
    <field name="name">idx.repair.graph</field>
    <field name="model">idx.repair</field>
    <field name="arch" type="xml">
        <graph string="Sales by Month" type="bar">
            <field name="reason" type="row"/>
            <field name="partner_id"/>
        </graph>
    </field>
</record>

顯示的畫面如下:
https://ithelp.ithome.com.tw/upload/images/20230925/20163263eAjSC7UNlT.png

id:pivot view的id,只要不重複即可。
name:pivot view的name,僅為了識別用。
model:pivot view的所屬model。
arch:用來定義view。

圖表的參數配置:

  • type = 'bar':長條圖
  • type = 'line':折線圖
  • type = 'pie':圓餅圖

以上為這三種view的簡單介紹。


上一篇
[Day 9]odoo14 - form view介紹
下一篇
[Day 11]odoo14 - 建立report(一)
系列文
Odoo開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言